/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ !function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0=0&&t<=m}}function J(n){return function(r){return null==r?void 0:r[n]}}var G=J("byteLength"),H=K(G),Q=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;var X=c?function(n){return h?h(n)&&!q(n):H(n)&&Q.test(a.call(n))}:C(!1),Y=J("length");function Z(n,r){r=function(n){for(var r={},t=n.length,e=0;e":">",'"':""","'":"'","`":"`"},Cn=Ln($n),Kn=Ln(_n($n)),Jn=tn.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g},Gn=/(.)^/,Hn={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},Qn=/\\|'|\r|\n|\u2028|\u2029/g;function Xn(n){return"\\"+Hn[n]}var Yn=/^\s*(\w|\$)+\s*$/;var Zn=0;function nr(n,r,t,e,u){if(!(e instanceof r))return n.apply(t,u);var o=Mn(n.prototype),i=n.apply(o,u);return _(i)?i:o}var rr=j((function(n,r){var t=rr.placeholder,e=function(){for(var u=0,o=r.length,i=Array(o),a=0;a1)ur(a,r-1,t,e),u=e.length;else for(var f=0,c=a.length;f0&&(t=r.apply(this,arguments)),n<=1&&(r=null),t}}var lr=rr(cr,2);function sr(n,r,t){r=qn(r,t);for(var e,u=nn(n),o=0,i=u.length;o0?0:u-1;o>=0&&o0?a=o>=0?o:Math.max(o+f,a):f=o>=0?Math.min(o+1,f):o+f+1;else if(t&&o&&f)return e[o=t(e,u)]===u?o:-1;if(u!=u)return(o=r(i.call(e,a,f),$))>=0?o+a:-1;for(o=n>0?a:f-1;o>=0&&o0?0:i-1;for(u||(e=r[o?o[a]:a],a+=n);a>=0&&a=3;return r(n,Fn(t,u,4),e,o)}}var Ar=wr(1),xr=wr(-1);function Sr(n,r,t){var e=[];return r=qn(r,t),jr(n,(function(n,t,u){r(n,t,u)&&e.push(n)})),e}function Or(n,r,t){r=qn(r,t);for(var e=!er(n)&&nn(n),u=(e||n).length,o=0;o=0}var Br=j((function(n,r,t){var e,u;return D(r)?u=r:(r=Nn(r),e=r.slice(0,-1),r=r[r.length-1]),_r(n,(function(n){var o=u;if(!o){if(e&&e.length&&(n=In(n,e)),null==n)return;o=n[r]}return null==o?o:o.apply(n,t)}))}));function Nr(n,r){return _r(n,Rn(r))}function Ir(n,r,t){var e,u,o=-1/0,i=-1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;ao&&(o=e);else r=qn(r,t),jr(n,(function(n,t,e){((u=r(n,t,e))>i||u===-1/0&&o===-1/0)&&(o=n,i=u)}));return o}function Tr(n,r,t){if(null==r||t)return er(n)||(n=jn(n)),n[Wn(n.length-1)];var e=er(n)?En(n):jn(n),u=Y(e);r=Math.max(Math.min(r,u),0);for(var o=u-1,i=0;i1&&(e=Fn(e,r[1])),r=an(n)):(e=qr,r=ur(r,!1,!1),n=Object(n));for(var u=0,o=r.length;u1&&(t=r[1])):(r=_r(ur(r,!1,!1),String),e=function(n,t){return!Er(r,t)}),Ur(n,e,t)}));function zr(n,r,t){return i.call(n,0,Math.max(0,n.length-(null==r||t?1:r)))}function Lr(n,r,t){return null==n||n.length<1?null==r||t?void 0:[]:null==r||t?n[0]:zr(n,n.length-r)}function $r(n,r,t){return i.call(n,null==r||t?1:r)}var Cr=j((function(n,r){return r=ur(r,!0,!0),Sr(n,(function(n){return!Er(r,n)}))})),Kr=j((function(n,r){return Cr(n,r)}));function Jr(n,r,t,e){A(r)||(e=t,t=r,r=!1),null!=t&&(t=qn(t,e));for(var u=[],o=[],i=0,a=Y(n);ir?(e&&(clearTimeout(e),e=null),a=c,i=n.apply(u,o),e||(u=o=null)):e||!1===t.trailing||(e=setTimeout(f,l)),i};return c.cancel=function(){clearTimeout(e),a=0,e=u=o=null},c},debounce:function(n,r,t){var e,u,o,i,a,f=function(){var c=zn()-u;r>c?e=setTimeout(f,r-c):(e=null,t||(i=n.apply(a,o)),e||(o=a=null))},c=j((function(c){return a=this,o=c,u=zn(),e||(e=setTimeout(f,r),t&&(i=n.apply(a,o))),i}));return c.cancel=function(){clearTimeout(e),e=o=a=null},c},wrap:function(n,r){return rr(r,n)},negate:fr,compose:function(){var n=arguments,r=n.length-1;return function(){for(var t=r,e=n[r].apply(this,arguments);t--;)e=n[t].call(this,e);return e}},after:function(n,r){return function(){if(--n<1)return r.apply(this,arguments)}},before:cr,once:lr,findKey:sr,findIndex:vr,findLastIndex:hr,sortedIndex:yr,indexOf:gr,lastIndexOf:br,find:mr,detect:mr,findWhere:function(n,r){return mr(n,Dn(r))},each:jr,forEach:jr,map:_r,collect:_r,reduce:Ar,foldl:Ar,inject:Ar,reduceRight:xr,foldr:xr,filter:Sr,select:Sr,reject:function(n,r,t){return Sr(n,fr(qn(r)),t)},every:Or,all:Or,some:Mr,any:Mr,contains:Er,includes:Er,include:Er,invoke:Br,pluck:Nr,where:function(n,r){return Sr(n,Dn(r))},max:Ir,min:function(n,r,t){var e,u,o=1/0,i=1/0;if(null==r||"number"==typeof r&&"object"!=typeof n[0]&&null!=n)for(var a=0,f=(n=er(n)?n:jn(n)).length;ae||void 0===t)return 1;if(t script[type="application/json"][data-drupal-selector="drupal-settings-json"], body > script[type="application/json"][data-drupal-selector="drupal-settings-json"]'); window.drupalSettings = {}; if (settingsElement !== null) { window.drupalSettings = JSON.parse(settingsElement.textContent); } })();; window.drupalTranslations = {"strings":{"":{"Save":"Salvar","Thu":"qui","Thursday":"quinta-feira","Changed":"Alterado","Link":"Inserir\/Editar Hiperlink","Error message":"Menssagem de erro","The response failed verification so will not be processed.":"A resposta falhou na verifica\u00e7\u00e3o, ent\u00e3o n\u00e3o ser\u00e1 processada.","The callback URL is not local and not trusted: !url":"A URL de retorno n\u00e3o \u00e9 local e n\u00e3o \u00e9 confi\u00e1vel: !url","Please wait...":"Por favor, aguarde...","ReadyState: !readyState":"ReadyState: !readyState","closed":"fechado","Edit":"Editar","An AJAX HTTP error occurred.":"Ocorreu um erro HTTP no AJAX","ResponseText: !responseText":"Texto de Resposta: !responseText","Next":"Pr\u00f3ximo","CustomMessage: !customMessage":"Mensagem personalizada: !customMessage","Home":"In\u00edcio","Cancel":"Cancelar","StatusText: !statusText":"Texto de Status: !statusText","Debugging information follows.":"Estas s\u00e3o as informa\u00e7\u00f5es de depura\u00e7\u00e3o.","Disable":"Desativar","An AJAX HTTP request terminated abnormally.":"Uma requisi\u00e7\u00e3o HTTP AJAX terminou de forma inesperada.","Path: !uri":"Caminho: !uri","HTTP Result Code: !status":"C\u00f3digo do Resultado HTTP: !status","Tuesday":"ter\u00e7a-feira","Saturday":"s\u00e1bado","Continue":"Continuar","Open":"Aberto","Friday":"sexta-feira","Wednesday":"quarta-feira","Monday":"segunda-feira","Done":"Conclu\u00eddo","OK":"OK","Tue":"ter","Show":"Exibir","Wed":"qua","Fri":"sex","Sat":"sab","Close":"Fechar","Mon":"seg","Sun":"dom","May":"mai","Prev":"Anterior","Apr":"abr","Extend":"Estender","Feb":"fev","We":"Qua","Mo":"Seg","Jun":"jun","Aug":"ago","Sep":"set","Oct":"out","Nov":"nov","Dec":"dez","Su":"Dom","Tu":"Ter","Th":"Qui","Fr":"Sex","Sa":"S\u00e1b","Mar":"mar","Deselect all rows in this table":"Desmarcar todas as linhas da tabela","Jan":"jan","Today":"Hoje","Not published":"N\u00e3o publicado","Loading...":"Carregando...","Hide":"Ocultar","Unlink":"Remover Hiperlink","Quick edit":"Edi\u00e7\u00e3o r\u00e1pida","mm\/dd\/yy":"dd\/mm\/yy","Not promoted":"N\u00e3o promovido","Alias: @alias":"URL Alternativa: @alias","Not in menu":"Fora do menu","@label":"@label","No alias":"Nenhuma URL alternativa","By @name":"Por @name","By @name on @date":"Por @name em @date","New revision":"Nova revis\u00e3o","Drag to re-order":"Arraste para reordenar","Changes made in this table will not be saved until the form is submitted.":"As mudan\u00e7as feitas nesta tabela n\u00e3o v\u00e3o ser salvas antes do formul\u00e1rio ser enviado.","Lock":"Travar","This permission is inherited from the authenticated user role.":"Essa permiss\u00e3o \u00e9 herdada do papel de usu\u00e1rio autenticado.","Requires a title":"T\u00edtulo requerido","Not restricted":"Sem restri\u00e7\u00f5es","No revision":"Sem revis\u00e3o","Restricted to certain pages":"Restrito para certas p\u00e1ginas","The block cannot be placed in this region.":"O bloco n\u00e3o pode ser colocado nessa regi\u00e3o.","(active tab)":"(aba ativa)","Edit summary":"Editar resumo","Hide summary":"Ocultar sum\u00e1rio","Don\u0027t display post information":"N\u00e3o exibir informa\u00e7\u00f5es de postagem","Unlock":"Desbloquear","Collapse":"Encolher","Automatic alias":"Endere\u00e7o autom\u00e1tico","Not scheduled":"N\u00e3o agendado","Unpublishing enabled":"Despublica\u00e7\u00e3o habilitada","Publishing enabled":"Publica\u00e7\u00e3o habilitada","Scheduled for unpublishing":"Agendado para despublica\u00e7\u00e3o","Scheduled for publishing":"Agendado para publica\u00e7\u00e3o","Insert this token into your form":"Insira este token no seu formul\u00e1rio","@action @title configuration options":"Op\u00f5es de configura\u00e7\u00e3o de @title @action","End tour":"Terminar o tour","Show description":"Mostrar descri\u00e7\u00e3o","Show all columns":"Mostrar todas as colunas","Horizontal orientation":"Orienta\u00e7\u00e3o horizontal","Saving":"Salvando","Hide description":"Ocultar descri\u00e7\u00e3o","Hide lower priority columns":"Esconder colunas de menor prioridade","opened":"aberta","Discard changes":"Descartar mudan\u00e7as","Vertical orientation":"Orienta\u00e7\u00e3o vertical","You have unsaved changes":"Voc\u00ea tem altera\u00e7\u00f5es n\u00e3o salvas","Press the esc key to exit.":"Pressione a tecla Esc para sair.","@count contextual link\u0003@count contextual links":"@count link contextual\u0003@count links contextuais","Does not need to be updated":"N\u00e3o necessita atualiza\u00e7\u00e3o","Inverse":"Invertido","Flag other translations as outdated":"Marcar outras tradu\u00e7\u00f5es como desatualizadas","Needs to be updated":"Necessita de atualiza\u00e7\u00e3o","Do not flag other translations as outdated":"N\u00e3o marcar outras tradu\u00e7\u00f5es como desatualizadas","Leave preview?":"Abandonar pr\u00e9-visualiza\u00e7\u00e3o?","Leave preview":"Abandonar pr\u00e9-visualiza\u00e7\u00e3o","Leaving the preview will cause unsaved changes to be lost. Are you sure you want to leave the preview?":"Sair da pr\u00e9-visualiza\u00e7\u00e3o far\u00e1 com que altera\u00e7\u00f5es n\u00e3o salvas sejam perdidas. Voc\u00ea tem certeza que quer sair da pr\u00e9-visualiza\u00e7\u00e3o?","Show row weights":"Exibir pesos das linhas","Hide row weights":"Ocultar pesos das linhas","You have unsaved changes.":"Voc\u00ea tem altera\u00e7\u00f5es no salvas.","Rich Text Editor, !label field":"Editor de Textos Ricos, campo !label","Change text format?":"Alterar formato de texto?","Breadcrumbs":"Breadcrumbs","Sunday":"domingo","Edit Link":"Editar link","Jul":"jul","List additional actions":"Listar a\u00e7\u00f5es adicionais","Select all rows in this table":"Selecionar todas as linhas da tabela","The selected file %filename cannot be uploaded. Only files with the following extensions are allowed: %extensions.":"O arquivo selecionado %filename n\u00e3o p\u00f4de ser transferido. Somente arquivos com as seguintes extens\u00f5es s\u00e3o permitidos: %extensions.","First click a text field to insert your tokens into.":"Primeiramente, clique no campo de texto para inserir seus tokens nela","Discard changes?":"Descartar mudan\u00e7as?","Network problem!":"Problema de rede!","Show table cells that were hidden to make the table fit within a small screen.":"Mostrar c\u00e9lulas da tabela que foram ocultadas para que a tabela coubesse em uma tela pequena.","Insert media":"Inserir m\u00eddia","Insert code snippet":"Inserir trecho de c\u00f3digo","Insert box":"Inserir caixa de texto","Insert quote box":"Inserir caixa de cita\u00e7\u00e3o","Insert Template":"Inserir\/Editar Formata\u00e7\u00e3o","Insert left column template":"Inserir formata\u00e7\u00e3o de imagem a esquerda.","Insert right column template":"Inserir formata\u00e7\u00e3o de imagem a direita.","Insert two column template":"Inserir formata\u00e7\u00e3o de duas colunas.","Insert three column template":"Inserir formata\u00e7\u00e3o de tr\u00eas colunas.","Insert Alert box":"Inserir caixa de alerta","Insert map":"Inserir mapa","CTRL+Left click will prevent this dialog from showing and proceed to the clicked link.":"CTRL+Clique esquerdo impedir\u00e1 que esta caixa de di\u00e1logo seja exibida e prossiga para o link clicado."},"Long month name":{"August":"Agosto","June":"Junho","May":"Maio","April":"Abril","January":"Janeiro","March":"Mar\u00e7o","February":"Fevereiro","December":"Dezembro","July":"Julho","September":"Setembro","November":"Novembro","October":"Outubro"}},"pluralFormula":{"1":0,"default":1}};; /** * DO NOT EDIT THIS FILE. * See the following change record for more information, * https://www.drupal.org/node/2815083 * @preserve **/ window.Drupal = { behaviors: {}, locale: {} }; (function (Drupal, drupalSettings, drupalTranslations, console, Proxy, Reflect) { Drupal.throwError = function (error) { setTimeout(function () { throw error; }, 0); }; Drupal.attachBehaviors = function (context, settings) { context = context || document; settings = settings || drupalSettings; var behaviors = Drupal.behaviors; Object.keys(behaviors || {}).forEach(function (i) { if (typeof behaviors[i].attach === 'function') { try { behaviors[i].attach(context, settings); } catch (e) { Drupal.throwError(e); } } }); }; Drupal.detachBehaviors = function (context, settings, trigger) { context = context || document; settings = settings || drupalSettings; trigger = trigger || 'unload'; var behaviors = Drupal.behaviors; Object.keys(behaviors || {}).forEach(function (i) { if (typeof behaviors[i].detach === 'function') { try { behaviors[i].detach(context, settings, trigger); } catch (e) { Drupal.throwError(e); } } }); }; Drupal.checkPlain = function (str) { str = str.toString().replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"').replace(/'/g, '''); return str; }; Drupal.formatString = function (str, args) { var processedArgs = {}; Object.keys(args || {}).forEach(function (key) { switch (key.charAt(0)) { case '@': processedArgs[key] = Drupal.checkPlain(args[key]); break; case '!': processedArgs[key] = args[key]; break; default: processedArgs[key] = Drupal.theme('placeholder', args[key]); break; } }); return Drupal.stringReplace(str, processedArgs, null); }; Drupal.stringReplace = function (str, args, keys) { if (str.length === 0) { return str; } if (!Array.isArray(keys)) { keys = Object.keys(args || {}); keys.sort(function (a, b) { return a.length - b.length; }); } if (keys.length === 0) { return str; } var key = keys.pop(); var fragments = str.split(key); if (keys.length) { for (var i = 0; i < fragments.length; i++) { fragments[i] = Drupal.stringReplace(fragments[i], args, keys.slice(0)); } } return fragments.join(args[key]); }; Drupal.t = function (str, args, options) { options = options || {}; options.context = options.context || ''; if (typeof drupalTranslations !== 'undefined' && drupalTranslations.strings && drupalTranslations.strings[options.context] && drupalTranslations.strings[options.context][str]) { str = drupalTranslations.strings[options.context][str]; } if (args) { str = Drupal.formatString(str, args); } return str; }; Drupal.url = function (path) { return drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix + path; }; Drupal.url.toAbsolute = function (url) { var urlParsingNode = document.createElement('a'); try { url = decodeURIComponent(url); } catch (e) {} urlParsingNode.setAttribute('href', url); return urlParsingNode.cloneNode(false).href; }; Drupal.url.isLocal = function (url) { var absoluteUrl = Drupal.url.toAbsolute(url); var protocol = window.location.protocol; if (protocol === 'http:' && absoluteUrl.indexOf('https:') === 0) { protocol = 'https:'; } var baseUrl = protocol + '//' + window.location.host + drupalSettings.path.baseUrl.slice(0, -1); try { absoluteUrl = decodeURIComponent(absoluteUrl); } catch (e) {} try { baseUrl = decodeURIComponent(baseUrl); } catch (e) {} return absoluteUrl === baseUrl || absoluteUrl.indexOf(baseUrl + '/') === 0; }; Drupal.formatPlural = function (count, singular, plural, args, options) { args = args || {}; args['@count'] = count; var pluralDelimiter = drupalSettings.pluralDelimiter; var translations = Drupal.t(singular + pluralDelimiter + plural, args, options).split(pluralDelimiter); var index = 0; if (typeof drupalTranslations !== 'undefined' && drupalTranslations.pluralFormula) { index = count in drupalTranslations.pluralFormula ? drupalTranslations.pluralFormula[count] : drupalTranslations.pluralFormula.default; } else if (args['@count'] !== 1) { index = 1; } return translations[index]; }; Drupal.encodePath = function (item) { return window.encodeURIComponent(item).replace(/%2F/g, '/'); }; Drupal.deprecationError = function (_ref) { var message = _ref.message; if (drupalSettings.suppressDeprecationErrors === false && typeof console !== 'undefined' && console.warn) { console.warn('[Deprecation] ' + message); } }; Drupal.deprecatedProperty = function (_ref2) { var target = _ref2.target, deprecatedProperty = _ref2.deprecatedProperty, message = _ref2.message; if (!Proxy || !Reflect) { return target; } return new Proxy(target, { get: function get(target, key) { for (var _len = arguments.length, rest = Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) { rest[_key - 2] = arguments[_key]; } if (key === deprecatedProperty) { Drupal.deprecationError({ message: message }); } return Reflect.get.apply(Reflect, [target, key].concat(rest)); } }); }; Drupal.theme = function (func) { if (func in Drupal.theme) { var _Drupal$theme; for (var _len2 = arguments.length, args = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { args[_key2 - 1] = arguments[_key2]; } return (_Drupal$theme = Drupal.theme)[func].apply(_Drupal$theme, args); } }; Drupal.theme.placeholder = function (str) { return '' + Drupal.checkPlain(str) + ''; }; })(Drupal, window.drupalSettings, window.drupalTranslations, window.console, window.Proxy, window.Reflect);; /** * DO NOT EDIT THIS FILE. * See the following change record for more information, * https://www.drupal.org/node/2815083 * @preserve **/ if (window.jQuery) { jQuery.noConflict(); } document.documentElement.className += ' js'; (function (Drupal, drupalSettings) { var domReady = function domReady(callback) { if (document.readyState !== 'loading') { callback(); } else { var listener = function listener() { callback(); document.removeEventListener('DOMContentLoaded', listener); }; document.addEventListener('DOMContentLoaded', listener); } }; domReady(function () { Drupal.attachBehaviors(document, drupalSettings); }); })(Drupal, window.drupalSettings);; /** * @file * Cherries by @toddmotto, @cferdinandi, @adamfschwartz, @daniellmb. * * @todo: Use Cash or Underscore when jQuery is dropped by supported plugins. */ /* global define, module */ (function (root, factory) { 'use strict'; // Inspired by https://github.com/addyosmani/memoize.js/blob/master/memoize.js if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. define([], factory); } else if (typeof exports === 'object') { // Node. Does not work with strict CommonJS, but only CommonJS-like // environments that support module.exports, like Node. module.exports = factory(); } else { // Browser globals (root is window). root.dBlazy = factory(); } })(this, function () { 'use strict'; /** * Object for public APIs where dBlazy stands for drupalBlazy. * * @namespace */ var dBlazy = {}; // See https://developer.mozilla.org/en-US/docs/Web/API/Element/closest if (!Element.prototype.matches) { Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector; } /** * Check if the given element matches the selector. * * @name dBlazy.matches * * @param {Element} elem * The current element. * @param {String} selector * Selector to match against (class, ID, data attribute, or tag). * * @return {Boolean} * Returns true if found, else false. * * @see http://caniuse.com/#feat=matchesselector * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/matches */ dBlazy.matches = function (elem, selector) { // Check if matches, excluding HTMLDocument, see ::closest(). if (elem.matches(selector)) { return true; } return false; }; /** * Returns device pixel ratio. * * @return {Integer} * Returns the device pixel ratio. */ dBlazy.pixelRatio = function () { return window.devicePixelRatio || 1; }; /** * Returns cross-browser window width. * * @return {Integer} * Returns the window width. */ dBlazy.windowWidth = function () { return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth || window.screen.width; }; /** * Returns cross-browser window width and height. * * @return {Object} * Returns the window width and height. */ dBlazy.windowSize = function () { return { width: this.windowWidth, height: window.innerHeight }; }; /** * Returns data from the current active window. * * When being resized, the browser gave no data about pixel ratio from desktop * to mobile, not vice versa. Unless delayed for 4s+, not less, which is of * course unacceptable. * * @name dBlazy.activeWidth * * @param {Object} dataset * The dataset object must be keyed by window width. * @param {Boolean} mobileFirst * Whether to use min-width, or max-width. * * @return {mixed} * Returns data from the current active window. */ dBlazy.activeWidth = function (dataset, mobileFirst) { var me = this; var keys = Object.keys(dataset); var xs = keys[0]; var xl = keys[keys.length - 1]; var pr = (me.windowWidth() * me.pixelRatio()); var ww = mobileFirst ? me.windowWidth() : pr; var mw = function (w) { // The picture wants <= (approximate), non-picture wants >=, wtf. return mobileFirst ? parseInt(w) <= ww : parseInt(w) >= ww; }; var data = keys.filter(mw).map(function (v) { return dataset[v]; })[mobileFirst ? 'pop' : 'shift'](); return typeof data === 'undefined' ? dataset[ww >= xl ? xl : xs] : data; }; /** * Check if the HTML tag matches a specified string. * * @name dBlazy.equal * * @param {Element} el * The element to compare. * @param {String} str * HTML tag to match against. * * @return {Boolean} * Returns true if matches, else false. */ dBlazy.equal = function (el, str) { return el !== null && el.nodeName.toLowerCase() === str; }; /** * Get the closest matching element up the DOM tree. * * Inspired by Chris Ferdinandi, http://github.com/cferdinandi/smooth-scroll. * * @name dBlazy.closest * * @param {Element} el * Starting element. * @param {String} selector * Selector to match against (class, ID, data attribute, or tag). * * @return {Boolean|Element} * Returns null if not match found. * * @see http://caniuse.com/#feat=element-closest * @see http://caniuse.com/#feat=matchesselector * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/matches */ dBlazy.closest = function (el, selector) { var parent; while (el) { parent = el.parentElement; if (parent && parent.matches(selector)) { return parent; } el = parent; } return null; }; /** * Returns a new object after merging two, or more objects. * * Inspired by @adamfschwartz, @zackbloom, http://youmightnotneedjquery.com. * * @name dBlazy.extend * * @param {Object} out * The objects to merge together. * * @return {Object} * Merged values of defaults and options. */ dBlazy.extend = Object.assign || function (out) { out = out || {}; for (var i = 1, len = arguments.length; i < len; i++) { if (!arguments[i]) { continue; } for (var key in arguments[i]) { if (Object.prototype.hasOwnProperty.call(arguments[i], key)) { out[key] = arguments[i][key]; } } } return out; }; /** * A simple forEach() implementation for Arrays, Objects and NodeLists. * * @name dBlazy.forEach * * @author Todd Motto * @link https://github.com/toddmotto/foreach * * @param {Array|Object|NodeList} collection * Collection of items to iterate. * @param {Function} callback * Callback function for each iteration. * @param {Array|Object|NodeList} scope * Object/NodeList/Array that forEach is iterating over (aka `this`). */ dBlazy.forEach = function (collection, callback, scope) { var proto = Object.prototype; if (proto.toString.call(collection) === '[object Object]') { for (var prop in collection) { if (proto.hasOwnProperty.call(collection, prop)) { callback.call(scope, collection[prop], prop, collection); } } } else if (collection) { for (var i = 0, len = collection.length; i < len; i++) { callback.call(scope, collection[i], i, collection); } } }; /** * A simple hasClass wrapper. * * @name dBlazy.hasClass * * @param {Element} el * The HTML element. * @param {String} name * The class name. * * @return {bool} * True if the method is supported. * * @todo remove for el.classList.contains() alone. */ dBlazy.hasClass = function (el, name) { if (el.classList) { return el.classList.contains(name); } else { return el.className.indexOf(name) !== -1; } }; /** * A forgiving attribute wrapper with fallback. * * @name dBlazy.attr * * @param {Element} el * The HTML element. * @param {String} attr * The attr name. * @param {String} def * The default value. * * @return {String} * The attribute value, or fallback. */ dBlazy.attr = function (el, attr, def) { def = def || ''; return el !== null && el.hasAttribute(attr) ? el.getAttribute(attr) : def; }; /** * A simple attributes wrapper. * * @name dBlazy.setAttr * * @param {Element} el * The HTML element. * @param {String} attr * The attr name. * @param {Boolean} remove * True if should remove. */ dBlazy.setAttr = function (el, attr, remove) { if (el && el.hasAttribute('data-' + attr)) { var dataAttr = el.getAttribute('data-' + attr); if (attr === 'src') { el.src = dataAttr; } else { el.setAttribute(attr, dataAttr); } if (remove) { el.removeAttribute('data-' + attr); } } }; /** * A simple attributes wrapper looping based on the given attributes. * * @name dBlazy.setAttrs * * @param {Element} el * The HTML element. * @param {Array} attrs * The attr names. * @param {Boolean} remove * True if should remove. */ dBlazy.setAttrs = function (el, attrs, remove) { var me = this; me.forEach(attrs, function (src) { me.setAttr(el, src, remove); }); }; /** * A simple attributes wrapper, looping based on sources (picture/ video). * * @name dBlazy.setAttrsWithSources * * @param {Element} el * The starting HTML element. * @param {String} attr * The attr name, can be SRC or SRCSET. * @param {Boolean} remove * True if should remove. */ dBlazy.setAttrsWithSources = function (el, attr, remove) { var me = this; var parent = el.parentNode || null; var isPicture = parent && me.equal(parent, 'picture'); var targets = isPicture ? parent.getElementsByTagName('source') : el.getElementsByTagName('source'); attr = attr || (isPicture ? 'srcset' : 'src'); if (targets.length) { me.forEach(targets, function (source) { me.setAttr(source, attr, remove); }); } }; /** * Checks if image is decoded/ completely loaded. * * @name dBlazy.isDecoded * * @param {Image} img * The Image object. * * @return {bool} * True if the image is loaded. */ dBlazy.isDecoded = function (img) { if ('decoded' in img) { return img.decoded; } return img.complete; }; /** * Decodes the image. * * @name dBlazy.decode * * @param {Image} img * The Image object. * * @return {Promise} * The Promise object. */ dBlazy.decode = function (img) { var me = this; if (me.isDecoded(img)) { return Promise.resolve(img); } if ('decode' in img) { return img.decode(); } return new Promise(function (resolve, reject) { img.onload = function () { resolve(img); }; img.onerror = reject(); }); }; /** * Updates CSS background with multi-breakpoint images. * * @name dBlazy.updateBg * * @param {Element} el * The container HTML element. * @param {Boolean} mobileFirst * Whether to use min-width or max-width. */ dBlazy.updateBg = function (el, mobileFirst) { var me = this; var backgrounds = me.parse(el.getAttribute('data-backgrounds')); if (backgrounds) { var bg = me.activeWidth(backgrounds, mobileFirst); if (bg && bg !== 'undefined') { el.style.backgroundImage = 'url("' + bg.src + '")'; // Allows to disable Aspect ratio if it has known/ fixed heights such as // gridstack multi-size boxes. if (bg.ratio && !el.classList.contains('b-noratio')) { el.style.paddingBottom = bg.ratio + '%'; } } } }; /** * A simple removeAttribute wrapper. * * @name dBlazy.removeAttrs * * @param {Element} el * The HTML element. * @param {Array} attrs * The attr names. */ dBlazy.removeAttrs = function (el, attrs) { this.forEach(attrs, function (attr) { el.removeAttribute('data-' + attr); }); }; /** * A simple wrapper for [add|remove]EventListener. * * Made public from original bLazy library. * * @name dBlazy.binding * * @param {String} which * Whether bind or unbind. * @param {Element} el * The HTML element. * @param {String} eventName * The event name to add. * @param {Function} fn * The callback function. * @param {Object|Boolean} params * The optional param passed into a custom event. * * @see https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener * @todo remove old IE references after another check. */ dBlazy.binding = function (which, el, eventName, fn, params) { if (el && typeof fn === 'function') { var defaults = {capture: false, passive: true}; var extras; if (typeof params === 'boolean') { extras = params; } else { extras = params ? this.extend(defaults, params) : defaults; } var bind = function (e) { if (el.attachEvent) { el[(which === 'bind' ? 'attach' : 'detach') + 'Event']('on' + e, fn, extras); } else { el[(which === 'bind' ? 'add' : 'remove') + 'EventListener'](e, fn, extras); } }; if (eventName.indexOf(' ') > 0) { this.forEach(eventName.split(' '), bind); } else { bind(eventName); } } }; /** * A simple wrapper for event delegation like jQuery.on(). * * Inspired by http://stackoverflow.com/questions/30880757/ * javascript-equivalent-to-on. * * @name dBlazy.onoff * * @param {String} which * Whether on or off. * @param {Element} elm * The parent HTML element. * @param {String} eventName * The event name to trigger. * @param {String} childEl * Child selector to match against (class, ID, data attribute, or tag). * @param {Function} callback * The callback function. * @param {Object|Boolean} params * The optional param passed into a custom event. * * @see https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener */ dBlazy.onoff = function (which, elm, eventName, childEl, callback, params) { params = params || {capture: true, passive: false}; var bind = function (e) { var t = e.target; e.delegateTarget = elm; while (t && t !== this) { if (dBlazy.matches(t, childEl)) { callback.call(t, e); } t = t.parentNode; } }; this.binding(which === 'on' ? 'bind' : 'unbind', elm, eventName, bind, params); }; /** * A simple wrapper for event delegation like jQuery.on(). * * @name dBlazy.on * * @param {Element} elm * The parent HTML element. * @param {String} eventName * The event name to trigger. * @param {String} childEl * Child selector to match against (class, ID, data attribute, or tag). * @param {Function} callback * The callback function. * @param {Object|Boolean} params * The optional param passed into a custom event. */ dBlazy.on = function (elm, eventName, childEl, callback, params) { this.onoff('on', elm, eventName, childEl, callback, params); }; /** * A simple wrapper for event detachment. * * @name dBlazy.off * * @param {Element} elm * The parent HTML element. * @param {String} eventName * The event name to trigger. * @param {String} childEl * Child selector to match against (class, ID, data attribute, or tag). * @param {Function} callback * The callback function. * @param {Object|Boolean} params * The optional param passed into a custom event. */ dBlazy.off = function (elm, eventName, childEl, callback, params) { this.onoff('off', elm, eventName, childEl, callback, params); }; /** * A simple wrapper for addEventListener. * * @name dBlazy.bindEvent * * @param {Element} el * The HTML element. * @param {String} eventName * The event name to remove. * @param {Function} fn * The callback function. * @param {Object|Boolean} params * The optional param passed into a custom event. */ dBlazy.bindEvent = function (el, eventName, fn, params) { this.binding('bind', el, eventName, fn, params); }; /** * A simple wrapper for removeEventListener. * * @name dBlazy.unbindEvent * * @param {Element} el * The HTML element. * @param {String} eventName * The event name to remove. * @param {Function} fn * The callback function. * @param {Object} params * The optional param passed into a custom event. */ dBlazy.unbindEvent = function (el, eventName, fn, params) { this.binding('unbind', el, eventName, fn, params); }; /** * Executes a function once. * * @name dBlazy.once * * @author Daniel Lamb * @link https://github.com/daniellmb/once.js * * @param {Function} fn * The executed function. * * @return {Object} * The function result. */ dBlazy.once = function (fn) { var result; var ran = false; return function proxy() { if (ran) { return result; } ran = true; result = fn.apply(this, arguments); // For garbage collection. fn = null; return result; }; }; /** * A simple wrapper for JSON.parse() for string within data-* attributes. * * @name dBlazy.parse * * @param {String} str * The string to convert into JSON object. * * @return {Object|Boolean} * The JSON object, or false in case invalid. */ dBlazy.parse = function (str) { try { return JSON.parse(str); } catch (e) { return false; } }; /** * A simple wrapper to animate anything using animate.css. * * @name dBlazy.animate * * @param {Element} el * The animated HTML element. * @param {String} animation * Any custom animation name, fallbacks to [data-animation]. */ dBlazy.animate = function (el, animation) { var me = this; var props = [ 'animation', 'animation-duration', 'animation-delay', 'animation-iteration-count' ]; animation = animation || el.dataset.animation; el.classList.add('animated', animation); me.forEach(['Duration', 'Delay', 'IterationCount'], function (key) { if ('animation' + key in el.dataset) { el.style['animation' + key] = el.dataset['animation' + key]; } }); // Supports both BG and regular image. var cn = me.closest(el, '.media'); cn = cn === null ? el : cn; var blur = cn.querySelector('.b-blur--tmp'); function animationEnd() { me.removeAttrs(el, props); el.classList.add('is-b-animated'); el.classList.remove('animated', animation); me.forEach(props, function (key) { el.style.removeProperty(key); }); if (blur !== null && blur.parentNode !== null) { blur.parentNode.removeChild(blur); } me.unbindEvent(el, 'animationend', animationEnd); } me.bindEvent(el, 'animationend', animationEnd); }; /** * Removes common loading indicator classes. * * @name dBlazy.clearLoading * * @param {Element} el * The loading HTML element. */ dBlazy.clearLoading = function (el) { var me = this; // The .b-lazy element can be attached to IMG, or DIV as CSS background. // The .(*)loading can be .media, .grid, .slide__content, .box, etc. var loaders = [el, me.closest(el, '[class*="loading"]')]; this.forEach(loaders, function (loader) { if (loader !== null) { loader.className = loader.className.replace(/(\S+)loading/g, ''); } }); }; /** * A simple wrapper to delay callback function, taken out of blazy library. * * Alternative to core Drupal.debounce for D7 compatibility, and easy port. * * @name dBlazy.throttle * * @param {Function} fn * The callback function. * @param {Int} minDelay * The execution delay in milliseconds. * @param {Object} scope * The scope of the function to apply to, normally this. * * @return {Function} * The function executed at the specified minDelay. */ dBlazy.throttle = function (fn, minDelay, scope) { var lastCall = 0; return function () { var now = +new Date(); if (now - lastCall < minDelay) { return; } lastCall = now; fn.apply(scope, arguments); }; }; /** * A simple wrapper to delay callback function on window resize. * * @name dBlazy.resize * * @link https://github.com/louisremi/jquery-smartresize * * @param {Function} c * The callback function. * @param {Int} t * The timeout. * * @return {Function} * The callback function. */ dBlazy.resize = function (c, t) { window.onresize = function () { window.clearTimeout(t); t = window.setTimeout(c, 200); }; return c; }; /** * A simple wrapper for triggering event like jQuery.trigger(). * * @name dBlazy.trigger * * @param {Element} elm * The HTML element. * @param {String} eventName * The event name to trigger. * @param {Object} custom * The optional object passed into a custom event. * @param {Object} param * The optional param passed into a custom event. * * @see https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events * @todo: See if any consistent way for both custom and native events. */ dBlazy.trigger = function (elm, eventName, custom, param) { var event; var data = { detail: custom || {} }; if (typeof param === 'undefined') { data.bubbles = true; data.cancelable = true; } // Native. // IE >= 9 compat, else SCRIPT445: Object doesn't support this action. // https://msdn.microsoft.com/library/ff975299(v=vs.85).aspx if (typeof window.CustomEvent === 'function') { event = new CustomEvent(eventName, data); } else { event = document.createEvent('CustomEvent'); event.initCustomEvent(eventName, true, true, data); } elm.dispatchEvent(event); }; return dBlazy; }); ; !function(n){"function"==typeof define&&define.amd?define(["jquery"],function(e){return n(e)}):"object"==typeof module&&"object"==typeof module.exports?exports=n(require("jquery")):n(jQuery)}(function(n){function e(n){var e=7.5625,t=2.75;return n<1/t?e*n*n:n<2/t?e*(n-=1.5/t)*n+.75:n<2.5/t?e*(n-=2.25/t)*n+.9375:e*(n-=2.625/t)*n+.984375}void 0!==n.easing&&(n.easing.jswing=n.easing.swing);var t=Math.pow,u=Math.sqrt,r=Math.sin,i=Math.cos,a=Math.PI,c=1.70158,o=1.525*c,s=2*a/3,f=2*a/4.5;n.extend(n.easing,{def:"easeOutQuad",swing:function(e){return n.easing[n.easing.def](e)},easeInQuad:function(n){return n*n},easeOutQuad:function(n){return 1-(1-n)*(1-n)},easeInOutQuad:function(n){return n<.5?2*n*n:1-t(-2*n+2,2)/2},easeInCubic:function(n){return n*n*n},easeOutCubic:function(n){return 1-t(1-n,3)},easeInOutCubic:function(n){return n<.5?4*n*n*n:1-t(-2*n+2,3)/2},easeInQuart:function(n){return n*n*n*n},easeOutQuart:function(n){return 1-t(1-n,4)},easeInOutQuart:function(n){return n<.5?8*n*n*n*n:1-t(-2*n+2,4)/2},easeInQuint:function(n){return n*n*n*n*n},easeOutQuint:function(n){return 1-t(1-n,5)},easeInOutQuint:function(n){return n<.5?16*n*n*n*n*n:1-t(-2*n+2,5)/2},easeInSine:function(n){return 1-i(n*a/2)},easeOutSine:function(n){return r(n*a/2)},easeInOutSine:function(n){return-(i(a*n)-1)/2},easeInExpo:function(n){return 0===n?0:t(2,10*n-10)},easeOutExpo:function(n){return 1===n?1:1-t(2,-10*n)},easeInOutExpo:function(n){return 0===n?0:1===n?1:n<.5?t(2,20*n-10)/2:(2-t(2,-20*n+10))/2},easeInCirc:function(n){return 1-u(1-t(n,2))},easeOutCirc:function(n){return u(1-t(n-1,2))},easeInOutCirc:function(n){return n<.5?(1-u(1-t(2*n,2)))/2:(u(1-t(-2*n+2,2))+1)/2},easeInElastic:function(n){return 0===n?0:1===n?1:-t(2,10*n-10)*r((10*n-10.75)*s)},easeOutElastic:function(n){return 0===n?0:1===n?1:t(2,-10*n)*r((10*n-.75)*s)+1},easeInOutElastic:function(n){return 0===n?0:1===n?1:n<.5?-(t(2,20*n-10)*r((20*n-11.125)*f))/2:t(2,-20*n+10)*r((20*n-11.125)*f)/2+1},easeInBack:function(n){return(c+1)*n*n*n-c*n*n},easeOutBack:function(n){return 1+(c+1)*t(n-1,3)+c*t(n-1,2)},easeInOutBack:function(n){return n<.5?t(2*n,2)*(7.189819*n-o)/2:(t(2*n-2,2)*((o+1)*(2*n-2)+o)+2)/2},easeInBounce:function(n){return 1-e(1-n)},easeOutBounce:e,easeInOutBounce:function(n){return n<.5?(1-e(1-2*n))/2:(1+e(2*n-1))/2}})}); ; !function(i){"use strict";"function"==typeof define&&define.amd?define(["jquery"],i):"undefined"!=typeof exports?module.exports=i(require("jquery")):i(jQuery)}(function(i){"use strict";var e=window.Slick||{};(e=function(){var e=0;return function(t,o){var s,n=this;n.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:i(t),appendDots:i(t),arrows:!0,asNavFor:null,prevArrow:'',nextArrow:'',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(e,t){return i('